ANDROID: fix up rpmsg_device ABI break
In commit e70898ae1a42 ("rpmsg: Fix kfree() of static memory on setting
driver_override") a pointer was changed to const, which messes with the
CRC and ABI checks. As the code is fine if this is left as not-const,
just put it back to preserve the abi.
Bug: 161946584
Fixes: e70898ae1a42 ("rpmsg: Fix kfree() of static memory on setting driver_override")
Change-Id: I9a87b9cf412191d9872b48f1f876a81df6701de0
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
(cherry picked from commit 4f2270e2bca1854ebe8be23a82f665eaa27ee831)
Signed-off-by: Lee Jones <joneslee@google.com>
diff --git a/drivers/rpmsg/rpmsg_core.c b/drivers/rpmsg/rpmsg_core.c
index 2a729b3..03db9ff 100644
--- a/drivers/rpmsg/rpmsg_core.c
+++ b/drivers/rpmsg/rpmsg_core.c
@@ -586,7 +586,7 @@
device_initialize(dev);
if (driver_override) {
- ret = driver_set_override(dev, &rpdev->driver_override,
+ ret = driver_set_override(dev, (const char **)&rpdev->driver_override,
driver_override,
strlen(driver_override));
if (ret) {
diff --git a/include/linux/rpmsg.h b/include/linux/rpmsg.h
index 5c2420b..7e2a4f2 100644
--- a/include/linux/rpmsg.h
+++ b/include/linux/rpmsg.h
@@ -53,7 +53,7 @@
struct rpmsg_device {
struct device dev;
struct rpmsg_device_id id;
- const char *driver_override;
+ char *driver_override;
u32 src;
u32 dst;
struct rpmsg_endpoint *ept;